package com.cheer.utils;

import java.util.concurrent.ThreadLocalRandom;

/**
 * @author cheer
 */

public class RandomUtil {

    private static ThreadLocalRandom getRandom() {
        return ThreadLocalRandom.current();

    }

    /**
     * 获得一个[0,max)之间的随机整数。
     * @param max 最大值（不包括）
     * @return 一个[0,max)之间的随机整数
     */
    public static int getRandomInt(int max) {
        return getRandom().nextInt(max);
    }

    /**
     * 生成一个含有n位随机数字的字符串，用于验证码等
     * @param n 位数
     * @return 含有n位数字的一个String
     */
    public static String getRandNumberStr(int n) {
        StringBuilder s = new StringBuilder(n);
        for (int i = 0; i < n; i++) {
            s.append(getRandomInt(10)); //随机获取一个0~9之间的数
        }
        return s.toString();
    }

    public static void main(String[] args) throws Exception {
        System.out.println(getRandNumberStr(6));
        System.out.println(getRandNumberStr(5));
        System.out.println(getRandNumberStr(4));
        System.out.println(getRandNumberStr(10));
    }
}